axios.defaults.baseURL = "http://api-breakingnews-web.itheima.net"

//请求拦截器
//不用碰到/my设置headers
axios.interceptors.request.use(function (config) {
    //config是一个object ,里面有baseURL,url,headers等
    //给/my开头的请求添加身份认证信息,即headers里的token

    //判断是否有某个字符串的两个方法
    //①indexOf('/my/')>-1  indexOf('/my/')>=0 
    //②includes('/my/')返回值为true或者false,这个方法更好

    if (config.url.includes('/my/')) {
        config.headers.Authorization = localStorage.getItem('token')
    }
    return config;
}, function (error) {
    return Promise.reject(error)
})

//响应拦截器
//不登陆时不能跳转至首页
axios.interceptors.response.use(function (response) {
    let obj = response.data
    if (obj.status == 1 && obj.message === '身份认证失败！') {
        location.href = '/login.html'
        localStorage.removeItem("token")
    }
    //可以让axios返回的数据与jquery中的ajax返回的数据一样
    //response = response.data
    return response;
}, function (error) {
    return Promise.reject(error)
})

//格式化日期
function dateFormat(str) {
    //dt是一个对象
    let dt = new Date(str);
    let yy = dt.getFullYear();
    let mm = padZero(dt.getMonth() + 1);
    let dd = padZero(dt.getDate());

    let h = padZero(dt.getHours());
    let m = padZero(dt.getMinutes());
    let s = padZero(dt.getSeconds());

    return `${yy}-${mm}-${dd} ${h}:${m}:${s}`
}
//补零函数
function padZero(n) {
    return n < 10 ? "0" + n : n
}